package 算法.NiuKe.JZ;

/**
 * @author:谢君臣
 * @Date:2021/3/1620:46
 * @version:1.0
 * @function:
 * 输入一个整数数组，实现一个函数来调整该数组中数字的顺序，使得所有的奇数位于数组的前半部分，
 * 所有的偶数位于数组的后半部分，并保证奇数和奇数，偶数和偶数之间的相对位置不变。
 *      /**
 *             System.arraycopy(Data, index1, elementData, index2,length);
 *             Data :数据源数组
 *             index1：源数组需要拷贝的小标
 *             elementData：需要复制到的目标数组
 *             index2：目标数组需要替换的下标位置
 *             length：需要替换的长度
 *          */
public class JZ13 {
    public static void main(String[] args) {
        reOrderArray(new int[]{1,2,3,4,5,6,7});
    }
    public static int[] reOrderArray (int[] array) {
        // write code here
        int[]a = new int[array.length];
        int[]b = new int[array.length];
        int n =0,m=0;
        for (int i : array) {
            if (i%2==0)
                b[n++]=i;
            else
                a[m++]=i;
        }
        System.arraycopy(a,0,array,0,m);
        System.arraycopy(b,0,array,m,n);
        return array;
    }
}
